<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <button>传统注册事件</button>
    <button>方法监听注册事件</button>
    <button>ie9以下</button>
    <button>事件监听删除</button>
    <script>
        //传统注册事件具有唯一性
        //同一个元素同一个事件只能设置一次。后面的会覆盖前面的
        var btns = document.querySelectorAll('button');
        btns[0].onclick=function(){
            alert('hi');
        }
        btns[0].onclick=function(){
            alert('hao a u');
            btns[0].onclick=null;
        }
        // 事件监听注册事件  同一个事件可以添加多个监听事件
        //事件类型是字符型，必须带引号。不带on
        //此时会弹出两次
        btns[1].addEventListener('click',function(){
            alert(22);
        })
        btns[1].addEventListener('click',function(){
            alert(33);
        })

        //ie9以下的事件监听 
        //attachEvent
        //ie9以上及其他浏览器不支持
        //建议直接忽略
        // btns[2].attachEvent('onclick',function(){
        //     alert(11);
        // })
        
        //删除事件
        //传统删除 .onclick = null
        //放上面

        //事件监听的删除不能使用匿名函数
        function fn(){
            alert('yeah');
            btns[3].removeEventListener('click',fn)
        }
        btns[3].addEventListener('click',fn)
    </script>
</body>
</html>